package com.shoping.web.component.factory;

import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.BeanNameAware;
import org.springframework.context.annotation.Configuration;

/**
 * 可以看到，这个类也是 Aware 扩展的一种，触发点在 test 的初始化之前，也就是postProcessBeforeInitialization之前，
 * 这个类的触发点方法只有一个：setBeanName
 * <p>
 * 使用场景为：用户可以扩展这个点，在初始化 test 之前拿到 spring 容器中注册的的 beanName，来自行修改这个 beanName 的值。
 */
@Slf4j
@Configuration
public class MyBeanNameAware implements BeanNameAware {
    @Override
    public void setBeanName(String name) {
        log.info("-----测试9【test 实例化之后，填充属性前】.BeanNameAware---" + name);
    }
}
